import { _decorator, Node, tween, v3 } from "cc";
import { back } from "./back";
const { ccclass, property } = _decorator;

@ccclass("j1")
export class j1 extends back {
  @property(Node)
  item1: Node = null;
  @property(Node)
  item2: Node = null;

  start() {
    // 往复运动, by 是叠加
    tween(this.item1)
      .by(2, { position: v3(100, 0, 0) }) //这一行表示在 2 秒内，将 coin1 节点的位置沿着 x 轴正方向移动 100 个单位。这是一个相对移动。
      .by(2, { position: v3(-100, 0, 0) }) //接着，它在 2 秒内将 coin1 节点的位置沿着 x 轴负方向移动 100 个单位。同样，这也是一个相对移动。
      .union() //这个方法将前面两个相对移动的动画合并成一个连续的动画。
      .repeatForever() //这一行表示动画将无限重复播放。
      .start(); //最后，它启动了这个动画。

    // 同时缩小放大  如果to的缩小操作放到上面的tween里,则会变成先左右移动再放大缩小
    tween(this.item1)
      .to(1, { scale: v3(0.8, 0.8, 0) })
      .to(1, { scale: v3(1.0, 1.0, 0) })
      .union() //这个方法将前面两个相对移动的动画合并成一个连续的动画。
      .repeatForever() //这一行表示动画将无限重复播放。
      .start(); //最后，它启动了这个动画。

    tween(this.item2)
      .by(2, { position: v3(100, 0, 0) }) //这一行表示在 2 秒内，将 coin1 节点的位置沿着 x 轴正方向移动 100 个单位。这是一个相对移动。
      .by(2, { position: v3(-100, 0, 0) }) //接着，它在 2 秒内将 coin1 节点的位置沿着 x 轴负方向移动 100 个单位。同样，这也是一个相对移动。
      .union() //这个方法将前面两个相对移动的动画合并成一个连续的动画。
      .repeatForever() //这一行表示动画将无限重复播放。
      .start(); //最后，它启动了这个动画。
  }

  update(deltaTime: number) {}
}
